﻿<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:ctrl="clr-namespace:SharpVectors.Converters">

    <ControlTemplate x:Key="VerticalTabControl" TargetType="{x:Type TabControl}">
        <ControlTemplate.Resources>
            <Style TargetType="{x:Type TabItem}">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type TabItem}">
                            <Grid SnapsToDevicePixels="True">
                                <VisualStateManager.VisualStateGroups>
                                    <VisualStateGroup Name="CommonStates">
                                        <VisualState Name="MouseOver">
                                            <Storyboard>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="hoverShape" 
                                                    Storyboard.TargetProperty="Opacity" 
                                                    To="1" 
                                                    Duration="0:0:.1"/>
                                            </Storyboard>
                                        </VisualState>
                                        <VisualState Name="Normal">
                                            <Storyboard>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="hoverShape" 
                                                    Storyboard.TargetProperty="Opacity" 
                                                    To="0"
                                                    Duration="0:0:.1"/>
                                            </Storyboard>
                                        </VisualState>
                                    </VisualStateGroup>
                                    <VisualStateGroup Name="SelectionStates">
                                        <VisualState Name="Selected">
                                            <Storyboard>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="buttonShape" Storyboard.TargetProperty="Opacity" 
                                                    To="1" Duration="0:0:.3"/>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="buttonBackgroundShape" 
                                                    Storyboard.TargetProperty="Opacity" To="1" Duration="0"/>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="hoverShape" Storyboard.TargetProperty="Opacity" 
                                                    To="0" Duration="0:0:.1"/>
                                                <ColorAnimation 
                                                    Storyboard.TargetName="buttonText2" 
                                                    Storyboard.TargetProperty="(Foreground).(SolidColorBrush.Color)" 
                                                    To="White" Duration="0:0:.1" />
                                            </Storyboard>
                                        </VisualState>
                                        <VisualState Name="Unselected">
                                            <Storyboard>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="buttonShape" 
                                                    Storyboard.TargetProperty="Opacity" To="0" Duration="0:0:.1"/>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="buttonBackgroundShape" 
                                                    Storyboard.TargetProperty="Opacity" To="0" Duration="0"/>
                                                <DoubleAnimation 
                                                    Storyboard.TargetName="hoverShape" 
                                                    Storyboard.TargetProperty="Opacity" To="0" Duration="0:0:.1"/>
                                            </Storyboard>
                                        </VisualState>
                                    </VisualStateGroup>
                                </VisualStateManager.VisualStateGroups>
                                <Border Name="hoverShape"
                                        Height="40"
                                        Margin="0,0,1,0" 
                                        SnapsToDevicePixels="True" 
                                        BorderThickness="0,0,1,0" 
                                        BorderBrush="LightGray">
                                    <Border BorderBrush="#FFA1B7EA"
                                            BorderThickness="0,1" 
                                            Background="#FFE5EEF9" 
                                            Height="40" 
                                            SnapsToDevicePixels="True" />
                                </Border>
                                <Rectangle Name="buttonBackgroundShape" 
                                           Stretch="Fill" Opacity="0" 
                                           Fill="White" Height="40" SnapsToDevicePixels="True" />
                                <Border 
                                    Name="buttonShape" 
                                    Opacity="0" 
                                    BorderBrush="#FF0343A6" 
                                    BorderThickness="0,2" 
                                    Height="40"
                                    SnapsToDevicePixels="True">
                                    <Path 
                                        Data="M214,108 L346,108 346.125,118.125 337.75,126.125 346.375,134 346.375,143.875 214.25,144.25 z" 
                                        SnapsToDevicePixels="True" 
                                        Stretch="Fill"
                                        Height="40">
                                        <Path.Fill>
                                            <RadialGradientBrush GradientOrigin="0.2,0.5" RadiusX="0.8" RadiusY="0.8">
                                                <GradientStop Color="#FF5FA3F6" Offset="0" />
                                                <GradientStop Color="#FF0C55B9" Offset="1" />
                                            </RadialGradientBrush>
                                        </Path.Fill>
                                    </Path>
                                </Border>
                                <ContentPresenter Name="buttonText">
                                    <ContentPresenter.Content>
                                        <TextBlock Name="buttonText2"
                                            Margin="15,0,20,0" 
                                            TextBlock.FontFamily="Tahoma" 
                                            TextBlock.FontSize="12pt" 
                                            TextBlock.Foreground="Black"
                                            Text="{TemplateBinding Header}"
                                            VerticalAlignment="Center"/>
                                    </ContentPresenter.Content>
                                </ContentPresenter>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </ControlTemplate.Resources>
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="120" />
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>
            <Border Background="#FFE9ECEF" 
                    Grid.Column="0" 
                    BorderBrush="LightGray" 
                    BorderThickness="1" 
                    SnapsToDevicePixels="True" />
            <StackPanel IsItemsHost="True"
                        Grid.Column="0"
                        Margin="0,0,-1,0" 
                        SnapsToDevicePixels="True" />
            <ContentPresenter 
                Content="{TemplateBinding SelectedContent}" 
                Grid.Column="1" 
                Margin="15,0,0,0" />
        </Grid>
    </ControlTemplate>
</ResourceDictionary>
    